Skip to content

Secret manager: Passwords - #68

Merged
akremenetsky merged 1 commit into
masterfrom
feat/kms
Jun 29, 2025
Merged

Secret manager: Passwords#68
akremenetsky merged 1 commit into
masterfrom
feat/kms

Conversation

@akremenetsky

@akremenetsky akremenetsky commented Jun 25, 2025

Copy link
Copy Markdown
Member

Added the initial part of Secret Manager to manager passwords. The first implementation is supported only plain passwords but a particular constructor interface allow to implement more strict solutions in the future. The secret manager follows the universal agent way so actual password generation and saving is on the driver side. Single driver `PasswordCapabilityDriver' has been added in the first implementation that uses the PG database as a storage for passwords. An example, of adding a password:

Request:

curl --location 'http://10.20.0.2:11010/v1/secret/passwords/' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <TOKEN>' \
--data '{
    "name": "my-password",
    "project_id": "c27f59fe-d3d3-4625-804c-5c9fd3bb3142",
    "method": "AUTO_HEX",
    "constructor": {
        "kind": "plain"
    }
}'

Response:

{
    "uuid": "985dad4b-161c-432c-8d9f-be78763df758",
    "created_at": "2025-06-25T20:39:50.095203Z",
    "updated_at": "2025-06-25T20:39:56.335798Z",
    "project_id": "c27f59fe-d3d3-4625-804c-5c9fd3bb3142",
    "name": "my-password",
    "description": "",
    "method": "AUTO_HEX",
    "status": "ACTIVE",
    "constructor": {
        "kind": "plain"
    },
    "value": "755eca35ece5bd921852c72996d1a790"
}

There are two supported method for generation: AUTO_HEX, AUTO_URL_SAFE

Other improvements:
- Significant fixes for the configuraiton service, integration with SDK.
- Fixes for Element Manager for integration with universal agent.
- A tiny fix for DNS for tests.

@akremenetsky akremenetsky self-assigned this Jun 25, 2025
@akremenetsky
akremenetsky force-pushed the feat/kms branch 2 times, most recently from 6a57b23 to dc176c9 Compare June 25, 2025 20:45
@akremenetsky
akremenetsky marked this pull request as ready for review June 25, 2025 20:45
Comment thread genesis_core/agent/universal/drivers/secret/backend/db.py
Comment thread genesis_core/secret/service.py
Comment thread genesis_core/user_api/api/routes.py
@akremenetsky
akremenetsky force-pushed the feat/kms branch 4 times, most recently from 53fbfbc to c306bc5 Compare June 29, 2025 14:28
Added the initial part of Secret Manager to manager passwords. The first
implementation is supported only plain passwords but a particular
`constructor` interface allow to implement more strict solutions in the
future. The secret manager follows the universal agent way so actual
password generation and saving is on the driver side. Single driver
`PasswordCapabilityDriver' has been added in the first implementation
that uses the PG database as a storage for passwords. An example, of
adding a password:

Request:
```curl
curl --location 'http://10.20.0.2:11010/v1/secret/passwords/' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <TOKEN>' \
--data '{
    "name": "my-password",
    "project_id": "c27f59fe-d3d3-4625-804c-5c9fd3bb3142",
    "method": "AUTO_HEX",
    "constructor": {
        "kind": "plain"
    }
}'

```

Response:
```curl
{
    "uuid": "985dad4b-161c-432c-8d9f-be78763df758",
    "created_at": "2025-06-25T20:39:50.095203Z",
    "updated_at": "2025-06-25T20:39:56.335798Z",
    "project_id": "c27f59fe-d3d3-4625-804c-5c9fd3bb3142",
    "name": "my-password",
    "description": "",
    "method": "AUTO_HEX",
    "status": "ACTIVE",
    "constructor": {
        "kind": "plain"
    },
    "value": "755eca35ece5bd921852c72996d1a790"
}
```

There are two supported method for generation: AUTO_HEX, AUTO_URL_SAFE

Other improvements:
- Significant fixes for the configuraiton service, integration with SDK.
- Fixes for Element Manager for integration with universal agent.
- A tiny fix for DNS for tests.

Signed-off-by: Anton Kremenetsky <anton.kremenetsky@gmail.com>
@akremenetsky
akremenetsky merged commit 553eafe into master Jun 29, 2025
14 checks passed
@akremenetsky
akremenetsky deleted the feat/kms branch June 29, 2025 19:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants